// 单例设计模式
let loginModule = (function() {
    let $userName = $('.userName');
    let $password = $('.userPass');
    let $submit = $('.submit');

    function handle() {
        $submit.click(async function() {
            let account = $userName.val().trim();
            let password = $password.val().trim();

            // 格式校验（非空+格式）
            if (account === "" || password === "") {
                alert('亲，账号和密码不能为空哦(*￣︶￣)');
                return;
            }
            
            // 给password加密
            password = md5(password);
            let result = await axios.post('/user/login', {
                account,
                password
            });

            if (parseInt(result.code) === 0) {
                alert('小主，已经成功为您登录，即将跳转到首页~~');
                window.location.href = "index.html";
                return;
            }

            alert('小主，您输入的账号和密码不匹配，请您重新输入哦~~')

            // 发送POST请求, 把获取的账号密码传递给服务器
            /* axios.post('/user/login', {
                account,
                password
            }).then((result) => {
                // result从服务器获取的相应主体信息（axios请求是成功的）
                if (parseInt(result.code) === 0) {
                    alert('小主，已经成功为您登录，即将跳转到首页~~');
                    window.location.href = "index.html";
                    return;
                }
                alert('小主，您输入的账号和密码不匹配，请您重新输入哦~~');
            }).catch(reason => {
                // 当axiox失败时返回一个Promise实例，失败时会走catch
                console.log(`当前请求失败，原因是：${reason}`);
            }); */
        });
    }

    return {
        // 入口
        init() {
            handle();
        }
    }
})();

loginModule.init();